This package accompanies the following paper:

Allan Borodin, Christodoulos Karavasilis, Denis Pankratov. "An Experimental
Study of Algorithms for Online Bipartite Matching."

This package contains the implementation that was used to generate the results
in that paper. As such, it contains

(a) Algorithms for online bipartite matching under the known i.i.d. input
	model with integral types.
(b) Algorithms for generating random input families and stand-alone graphs.
(c) Real world instances that were used from Network Repository website, see
	http://networkrepository.com/ for details.

The code was written entirely in C++ using Microsoft Visual Studio Community
2017 version 15.5.7. The code is licensed under GNU General Public License v3 
(or later). Copyright(C) 2018  Denis Pankratov. Modifications Copyright (C) 
2019 Christodoulos Karavasilis. Modifications were made to this software,
though specific files or changes may not be fully tracked. The code in this
package comes with ABSOLUTELY NO WARRANTY; This is free software, and you 
are welcome to redistribute it under certain conditions; see the accompanying
documentation for details.

This package is organized as follows:

LICENSE.txt	-- the text of the GNU GPL v3
README.txt -- this file
BipartiteMatching.cpp -- the main project file. When compiled, you get an
	executable that can run any of the experiments from the paper.
graph.h -- the header file for the Graph class, which implements the 
	data structure and all the algorithms under consideration.
graph.cpp -- contains implementation of methods of the Graph class.
bmcommon.h -- the header file for some global variables and functions.
bmcommon.cpp -- the implementation of global functions.
randomgraphgen.h -- the header file collecting all functions responsible for
	generating families of type graphs as well as stand-alone grpahs.
randomgraphgen.cpp -- the implementation of the functions from the
	corresponding header file.
stdafx.h, stdafx.cpp -- the precompiled header files generated by MS Visual
	Studio
RealWorld/ -- the folder with real world graphs taken from Network Repository.
    It is populated with 6 different repositories and the corresponding
    acknowledgements.
ErdosRenyi/ -- an empty directory to store results of ErdosRenyi experiment.
Regular/ -- an empty directory to store results of Regular experiment.
MolloyReed/ -- an empty directory to store results of Molloy-Reed experiment.
PreferentialAttachment/ -- an empty directory to store results of Preferential
	Attachment experiment.
StandAlone/ -- an empty directory to store results of Stand Alone experiments.
targetver.h -- a file generated by MS Visual Studio.